package com.zdkj.subway.check.dto;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.zdkj.common.core.entity.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 *
 * @author
 * @since 2020-12-29
 */

@Data
@TableName("sw_st_reportquery_stationincome")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "车站营收日报表查询'")
public class SwStReportqueryStationincomeDTO extends Model<SwStReportqueryStationincomeDTO> {
    private static final long serialVersionUID = 1L;

    //唯一标识
    @TableId
    @ApiModelProperty(value = "唯一标识")
    private Long id;

    //关联ck_data_submit标识
    @ApiModelProperty(value = "关联ck_data_submit标识")
    private Long relationId;

    //线路编码
    @ApiModelProperty(value = "线路编码")
    private String lineCode;

    //车站编码
    @ApiModelProperty(value = "车站编码")
    private String stationCode;

    //统计日期
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "统计日期")
    private LocalDate statisticsDate;

    //结算周期开始时间
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "结算周期开始时间")
    private LocalDate beginTime;

    //结算周期结束时间
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "结算周期开始时间")
    private LocalDate endTime;

    //结算周期间隔
    @ApiModelProperty(value = "结算周期间隔")
    private Integer settlementTerm;

    //结算提交时间
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "结算提交时间")
    private LocalDate submitTime;

    //钱箱票款
    @ApiModelProperty(value = "钱箱票款")
    private BigDecimal cashBox;

    //补币金额
    @ApiModelProperty(value = "补币金额")
    private BigDecimal supplment;

    //手工清出
    @ApiModelProperty(value = "手工清出")
    private BigDecimal hand;

    //TVM收入小计
    @ApiModelProperty(value = "TVM收入小计")
    private BigDecimal subTvmTotal;

    //营销车票
    @ApiModelProperty(value = "营销车票")
    private BigDecimal marketTicket;

    //预制单程票
    @ApiModelProperty(value = "预制单程票")
    private BigDecimal yzdcp;

    //应急纸票
    @ApiModelProperty(value = "应急纸票")
    private BigDecimal yjzp;

    //BOM实收总金额小计
    @ApiModelProperty(value = "BOM实收总金额小计")
    private BigDecimal subBomTotal;

    //补售票员短款
    @ApiModelProperty(value = "补售票员短款")
    private BigDecimal conductorShort;

    //加收票款
    @ApiModelProperty(value = "加收票款")
    private BigDecimal addMoney;

    //客值交接长款
    @ApiModelProperty(value = "客值交接长款")
    private BigDecimal conductorLong;

    //其他
    @ApiModelProperty(value = "其他")
    private BigDecimal other;

    //营收总金额
    @ApiModelProperty(value = "营收总金额")
    private BigDecimal total;

    //客运值班员名称
    @ApiModelProperty(value = "客运值班员名称")
    private String passengerAttendName;

    //客运值班员工号
    @ApiModelProperty(value = "客运值班员工号")
    private String passengerAttendJobNo;

    //复核人名称,有可能有多人复核
    @ApiModelProperty(value = "复核人名称,有可能有多人复核")
    private String attendName;

    //复核人工号,有可能有多人复核
    @ApiModelProperty(value = "复核人工号,有可能有多人复核")
    private String attendJobNo;

    //部门ID
    @ApiModelProperty(value = "部门ID")
    private Integer deptId;

    //创建人ID
    @ApiModelProperty(value = "创建人ID")
    private Integer creatorId;

    //创建人名称
    @ApiModelProperty(value = "创建人名称")
    private String creatorName;

    //创建时间
    @ApiModelProperty(value = "创建时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDateTime createTime;

    //修改时间
    @ApiModelProperty(value = "修改时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDateTime updateTime;

    //删除标志
    @ApiModelProperty(value = "删除标志")
    private String delFlag;
}

